1. Technical Field
The invention relates to the field of network management. In particular, the invention relates to a process manager that monitors the health of processes running on a router.
2. Background Information and Description of Related Art
The architecture of high-performance Internet routers has advanced in the last several years to provide increased performance in routing ever-greater volumes of network traffic. It is not uncommon for a router to support numerous protocols as well as several applications for configuration and maintenance of the router tables, protocols, and network policies. These advances have increased the complexity of the router such that the management of applications and protocols running on the router is critical for reliable network performance.
In existing router management technology, the logic to support the applications, protocols, and associated management interfaces is centrally managed in a single master program. This can result in a single point of failure, meaning that even if there is a problem with only one protocol or application or interface, the entire program could crash, bringing the router down with it. In addition, if the master program needs to be updated, for example to accommodate a new protocol, then the master program must be brought down in order to perform the updates, thereby temporarily taking the router out of service.
In an effort to overcome some of the limitations in existing router management technology, management of applications, protocols, and associated management interfaces may be decentralized. However, this means that there will be several independent processes running simultaneously on both the active Router Protocol (RP) and line cards. These multiple processes share the resources of the processor on which they are running. Furthermore, processes often run multiple threads per process. These threads share the same address space and may be short or long-lived. Therefore, if any one process or any thread of a process is not healthy, it could be taking up valuable resources unnecessarily.